﻿using System;

namespace Scrobbler
{
    public interface IScrobblerSubmitter
    {
        /// <summary>
        /// Submit currently playing song to lastfm. Lastfm then displays that you're currently
        /// playing the song.
        /// </summary>
        /// <param name="artist">Artist. Required.</param>
        /// <param name="track">Track. Required.</param>
        /// <param name="album">Album title or empty string</param>
        /// <param name="seconds">Lenght of the track in seconds or empty string</param>
        /// <param name="TrackNumber">Track number or empty string</param>
        /// <param name="TrackId">TrackID from MusicBrainz or empty string</param>
        /// <returns>Returns true if OK else false</returns>
        bool SubmitPlayingNotification(string artist, string track, string album,
                                       string seconds, string TrackNumber, string TrackID);

        /// <summary>
        /// Submits listened track to Lastfm
        /// </summary>
        /// <param name="artist">Artist. Required.</param>
        /// <param name="track">Track. Required.</param>
        /// <param name="lenght">Lenght of the track in seconds. Required.</param>
        /// <param name="album">Album or empty string if not known.</param>
        /// <param name="TrackNumber">Track number or an empty string if not known</param>
        /// <param name="TrackID">TrackID from MusicBrainz or an empty string</param>
        /// <returns></returns>
        bool SubmitTrack(string artist,string track,string lenght,
                         string album,string TrackNumber,string TrackID);

        string LastPlayingNotificationStatus
        {
            get;
        }

        string LastSubmissionStatus
        {
            get;
        }
    }
}
